The present invention is related to a packet-frame generator and a method for creating an encoded packet frame. More particularly, the invention relates to the generation of encoded packet frames for transmission over a channel, preferably a wireless channel.
Although the present invention is applicable in a variety of applications it will be described with the focus on infrared links for wireless infrared data transmission. According to the Infrared Data Association (IrDA) standard for the IrDA Serial Infrared Physical Layer Specification to support a 16 Mb/s data rate extension, also referred to as Very Fast Infrared (VFIR), a so-called HHH(1,13) modulation code shall be applied.
The generation of packet frames as defined by the mentioned IrDA-VFIR (16 Mb/s) Physical Layer Specification by conventional methods and apparatuses show some drawbacks. For instance, the complete packet frame can only be created and assembled by hardware. Thus, a number of control signals and a complex design is required. The conventional methods for packet-frame generation use mixed multiplexing of different specified modulation patterns (e.g., preamble and delimiters) and modulation encoded data fields (e.g., IrLAP frame, CRC field) to assemble the packet frames in the modulation signal domain for subsequent transmission. The specified modulation patterns must be stored in several memory cells. Generally, at least two types of multiplexers, one for partial assembly of data related fields in the data input domain of the modulation encoder, i.e. in front of the modulation encoder, and a second one for the final assembly of the packet frame in the modulation signal domain, i.e. after the modulation encoder, are required. Commonly, some or all of the modulation signal fields are specific to violate the rules of the modulation code applied to the user data, which is regarded as random.
Hence, a scheme that allows an efficient generation of modulation signal streams is required. It also calls for a new efficient method and generator for creating an encoded packet frame.
It is an object of the present invention to overcome the disadvantages of the prior art and to reduce the packet-frame generator implementation complexity.
It is another object of the present invention to provide a method for creating an encoded packet frame in an efficient and variable manner, whereby the creation can be either on the software level, the hardware level, or a combination thereof.
It is still another object of the present invention to provide a packet-frame generator for creating an encoded packet frame that allows the assembly of entire packet frames in the data input domain of the modulation encoder.
It is a further object of the present invention to present a method for creating an encoded packet frame, whereby the created frame fields fulfill the rules of the modulation code.
These objects of the invention are achieved by the invention which comprises a system and method that allows efficient generation of modulation signal streams comprising encoded packet frames which are composed of certain specified modulation signal fields or frame fields including utilizable data in (random) data fields.
The proposed scheme unites two codes in a Composite Modulation Code, hereafter abbreviated to CMC, where two encoding functions can be implemented using the same set of encoder circuitry. The construction of such a CMC is based on partitioning and look-ahead techniques. A new and efficient method is disclosed that allows assembly of entire packet frames prior to encoding, which means in the data input domain of the modulation encoder. Packet frames in the data input domain are non-encoded packet frames. In particular, in the following it is disclosed how a conventional HHH(1,13) modulation encoder can be modified into a CMC encoder such that it generates a complete encoded packet frame by encoding an equivalent data input frame or non-encoded packet frame.
For this purpose, equivalent data input sequences are defined that produce the specified modulation signal patterns (e.g., preamble, delimiters) after passing them through the CMC encoder. The CMC encoder implements the dual-mode functions as defined by the CMC with a common set of hardware circuitry that includes a Composite Encoder State Machine (CESM). In particular, the basic HHH(1,13) code is modified into a dual-mode CMC such that it generates the complete encoded packet frame by encoding the mentioned equivalent data input frame or non-encoded packet frame.
The scheme for creating an encoded packet frame comprising encoded control data and encoded utilizable data operates as follows. At first, non-encoded control data and non-encoded utilizable data can be assembled into the non-encoded packet frame by an assembling means, preferably by just one multiplexer and/or discrete logic. Then, the non-encoded control data can be encoded by a first modulation code and the non-encoded utilizable data can be encoded by a second modulation code by use of an appropriate encoder, e.g., the CMC encoder, that comprises the first and second modulation code, preferably an AHM(1,7) code and the HHH(1,13) code. Finally, such a CMC encoder provides at its output the encoded packet frame comprising encoded control data and the encoded utilizable data for further processing, that means in the case of wireless infrared data transmission for direct transmission.
Application of the partitioning and look-ahead principles in the design of the CMC together with the proposed scheme""s capability to assemble entire packet frames in the data input domainxe2x80x94instead of the modulation signal domain as done conventionallyxe2x80x94offers several practical advantages, e.g., generally lower implementation complexity, such as reduction in the number of memory cells to store specific signal patterns (e.g., preamble, delimiters), fewer and narrower multiplexers, and smaller number of control signals. Furthermore, the means used to assemble a complete data input frame or non-encoded packet frame can be implemented either at a) the software level (processor implementable), b) the hardware level (combinatorial logic implementation), c) or by a combination of a) and b).
A processing system comprises at least a processor or processing logic. Typical processing systems are computers, peripheral devices, hand-held devices, cellar phones, and so forth.
If different frame fields can be completely assembled to the non-encoded packet frame before encoding, then the advantage occurs, that the non-encoded packet frame can be created completely by use of software since no further frame fields are necessary to be added to the encoded packet frame after encoding. This reduces the complexity of circuitry that otherwise would be required.
It shows advantageously that the assembling means can be realized in form of a computer program or software, because such a program can be adapted to the respective application accordingly. Further, no complex circuitry needs to be built or designed.
When the first modulation code is a run-length-limited (1,7) code comprising eight codewords and the second modulation code is a run-length-limited (1,13) code comprising fourteen codewords, than the advantage occurs that the second modulation code can be reduced to the first modulation code, preferably by using the eight codewords which are part of the fourteen codewords. It shows further advantageously that the modulation encoder then comprises a mapping table for at least the second modulation code.
The present invention is not restricted to infrared applications only and can be implemented in a variety of application fields, such as in magnetic recording systems, for example.